package com.ruyuan.commodity.api;

import com.ruyuan.commodity.domain.UpdateGoodsQuantityRequest;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestMapping;

/**
 * 商品库存操作客户端
 * 统一为一个接口（更新接口）
 * 内部实现为redis + lua 保证原子性
 */
@RequestMapping("/goods/quantity/client")
public interface GoodsQuantityClient {

    /**
     * 库存更新接口
     * @param request 库存更新请求对象
     * @return 如果扣减成功返回true，否则返false
     */
    @PutMapping("/updateSkuQuantity")
    Boolean updateSkuQuantity(UpdateGoodsQuantityRequest request);

}


